home *** CD-ROM | disk | FTP | other *** search
- /* GadTools layout toolkit
- **
- ** Copyright © 1993-1995 by Olaf `Olsen' Barthel
- ** Freely distributable.
- */
-
- #include "gtlayout_global.h"
-
- WORD LIBENT
- LT_GetCode(REG(d0) ULONG MsgQualifier,REG(d1) ULONG MsgClass,REG(d2) UWORD MsgCode,REG(a0) struct Gadget *MsgGadget)
- {
- if(MsgClass == IDCMP_RAWKEY && !(MsgCode & IECODE_UP_PREFIX) && KeymapBase)
- {
- UBYTE Buffer[10];
- struct InputEvent Event;
- LONG Len;
-
- Event . ie_NextEvent = NULL;
- Event . ie_Code = MsgCode & ~IECODE_UP_PREFIX;
- Event . ie_Qualifier = MsgQualifier;
- Event . ie_Class = IECLASS_RAWKEY;
- Event . ie_SubClass = 0;
- Event . ie_position . ie_addr = (APTR)MsgGadget;
-
- Buffer[0] = 0;
-
- if((Len = MapRawKey(&Event,Buffer,9,NULL)) > 0)
- {
- if(Buffer[0] != 0x9B || Len == 1)
- return((WORD)Buffer[0]);
- }
- }
-
- return(-1);
- }
-